# 数据库操作
# 这里使用内存存储作为示例，实际项目中可以替换为真实数据库
from typing import List, Optional
from app.schemas import Item

# 模拟数据库
fake_db: List[Item] = []

def get_all_items() -> List[Item]:
    """获取所有物品"""
    return fake_db

def get_item_by_id(item_id: int) -> Optional[Item]:
    """根据ID获取物品"""
    if 0 <= item_id < len(fake_db):
        return fake_db[item_id]
    return None

def create_item(item: Item) -> Item:
    """创建新物品"""
    fake_db.append(item)
    return item

def update_item(item_id: int, item: Item) -> Optional[Item]:
    """更新物品"""
    if 0 <= item_id < len(fake_db):
        fake_db[item_id] = item
        return item
    return None

def delete_item(item_id: int) -> Optional[Item]:
    """删除物品"""
    if 0 <= item_id < len(fake_db):
        return fake_db.pop(item_id)
    return None

